Matplotlib與Pandas、Seaborn,三者為Python最主要的套件,可處理資料視覺化。依照臺大資料分析與決策社所的文章,他們分析、比較三種套件後,認為就難度來說,Pandas較低,Seaborn次之,Matplotlib最難。(註1)如果要做簡單的資料視覺化圖表,照道理不會學習到Matplotlib,而會推薦初學者從Pandas著手。但為什麼我們要學習Matplotlib呢? 因其圖表功能非常強大,且擁有極佳的繪圖能力。我想這也是何以知名Python入門書《精通Python》在討論Python資料視覺化功能時,會將Matplotlib納入書中---即便它對於如我相同背景的文科生或初學Python的人來說,難度極高。
當然,Matplotlib也有貼心的地方。在Matplotlib網站中,有各形各色的圖表範例供大家學習,並可下載程式碼: (見圖一與圖二)
圖一: Matplotlib 藝廊(gallery)圖表內容(擷取自: https://matplotlib.org/stable/gallery/index.html)
圖二: Matplotlib 藝廊(gallery)圖表內容,畫面底下水藍色部分為可下載之程式碼內容(擷取自: https://matplotlib.org/stable/gallery/lines_bars_and_markers/csd_demo.html#sphx-glr-gallery-lines-bars-and-markers-csd-demo-py)
我們一樣可以使用Jupyter來書寫Matplotlib。在寫Matplotlib時,需要寫入以下內容: (註2)
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
之後我們可以使用Matplotlib接續繪製線條圖、散布圖。
註1: 有關Matplotlib的介紹文章,可參考臺大資料分析與決策社所,〈【Python Advanced II】資料視覺化:Matplotlib、Pandas、Seaborn〉。網址: https://medium.com/ntu-data-analytics-club/python-advanced-ii-%E8%B3%87%E6%96%99%E8%A6%96%E8%A6%BA%E5%8C%96-matplotlib-pandas-seaborn-b479f460acf2
註2: 此述句參考自以下內容: Kyran Dale著,林季岩譯,《資料視覺化:使用Python與JavaScript》(台北: 碁峰資訊,2017),頁248。